<?php
	class QuestionnaireManager{
		  private $_db;
	
		  public function __construct($db){
				$this->setDb($db);
		  }
		  
		  public function setDb(PDO $db){
				$this->_db = $db;
		  }
		  
		  public function add(Questionnaire $questionnaire){// permet d'ajouter une réponse au questionnaire
				$q = $this->_db->prepare('INSERT INTO questionnaire SET contenu = :contenu, idRefEleve = :idRefEleve, idRefQuestion = :idRefQuestion');
				$q->bindValue(':contenu', $questionnaire->contenu());
				$q->bindValue(':idRefEleve', $questionnaire->idRefEleve());
				$q->bindValue(':idRefQuestion', $questionnaire->idRefQuestion());
				$q->execute();
		  }
		  
		  public function delete(Questionnaire $questionnaire){// permet de supprimer une questionnaire
			  $this->_db->exec('DELETE FROM questionnaire WHERE id = '.$questionnaire->id());
		  }
		  
		  public function update(Questionnaire $questionnaire){// permet de modifier une questionnaire
				$q = $this->_db->prepare('UPDATE questionnaire SET contenu = :contenu, idRefEleve = :idRefEleve, idRefQuestion = :idRefQuestion WHERE id ='.$questionnaire->id());
				$q->bindValue(':contenu', $questionnaire->contenu());
				$q->bindValue(':idRefEleve', $questionnaire->idRefEleve());
				$q->bindValue(':idRefQuestion', $questionnaire->idRefQuestion());
				$q->execute();
		  }
		  
		  public function get($id){// retourne l'objet questionnaire d'id correspondant
				$id = (int) $id;
				$q = $this->_db->query('SELECT * FROM questionnaire WHERE id = '.$id);
				$donnees = $q->fetch();
				return new Questionnaire($donnees);
		  }
		  
		  public function getGroupByEleve(){
			  $questionnaire = array();
			  $q = $this->_db->query('SELECT * FROM questionnaire GROUP BY idRefEleve');
			  while($donnees = $q->fetch())
			  {
				  $questionnaire[] = new Questionnaire($donnees);
			  }
			  return $questionnaire;
		  }
		  
		  public function getByEleve($idEleve){
			  $questionnaire = array();
			  $q = $this->_db->query('SELECT * FROM questionnaire WHERE idRefEleve = '.$idEleve);
			  while($donnees = $q->fetch())
			  {
				  $questionnaire[] = new Questionnaire($donnees);
			  }
			  return $questionnaire;
		  }
	}
?>